package com.coolrui.common.system;

import lombok.Data;
import lombok.RequiredArgsConstructor;

import java.util.Collections;
import java.util.List;

@Data
@RequiredArgsConstructor
public class ApiList<T> {
    // 是否存在下一页
    private final Boolean hasMore;
    // 泛型数据列表
    private final List<T> list;

    public static <T> ApiList<T> makeResult(Boolean hasMore, List<T> list) {
        // 处理 hasMore 为 null 的情况
        hasMore = hasMore != null ? hasMore : false;
        // 处理 list 为 null 的情况，避免空指针异常
        list = list != null ? list : Collections.emptyList();
        return new ApiList<>(hasMore, list);
    }
}